私は最近 JSI と C に少しずつ足を突っ込んでおり、その結果、react-native-lz4 という小さなパッケージを構築することになりました。これは、C で書かれた LZ4 アルゴリズムを使用した React Native での高速ファイル圧縮のためのライブラリです。
これはまだ実験段階であり、エラー処理と API の拡張をまだ改良中ですが、すでに使用できます (注意してください!)
パッケージ: https://github.com/mateoguzmana/react-native-lz4
LZ4 について詳しくは、Web サイト https://lz4.org/
このパッケージは古いアーキテクチャと新しいアーキテクチャの両方をサポートしており、現在、あらゆる種類のファイルを圧縮および解凍するための 2 つの主要な関数を公開しています。
基本的な例:
import { compressFile, decompressFile } from 'react-native-lz4'; function onProgress(processedSize: number, totalSize: number) { // e.g. { processedSize: 50, totalSize: 100, progress: '50%' } console.log({ processedSize, totalSize, progress: `${Math.round((processedSize / totalSize) * 100)}%`, }); } const compressionResult = await compressFile( 'path/to/file', 'path/to/output', onProgress ); const decompressionResult = await decompressFile( 'path/to/file', 'path/to/output', onProgress ); console.log(compressionResult); // { success: true, message: 'File compressed successfully', originalSize: 100, finalSize: 50 } console.log(decompressionResult); // { success: true, message: 'File decompressed successfully', originalSize: 50, finalSize: 100 }
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3